#ifndef PLUGIN2_H
#define PLUGIN2_H

#include <QObject>

#include "PluginInterface.h"

class Plugin2Private;
class PLUGININTERFACE_EXPORT Plugin2 : public QObject, public PluginInterface {
  Q_OBJECT
  Q_INTERFACES(PluginInterface)
  Q_PLUGIN_METADATA(IID "com.zmgrobot.Plugins.Plugin2" FILE "mymetadata.json")
public:
  explicit Plugin2(QObject * = nullptr);
  ~Plugin2() override;

  QWidget *widget() override;
  void receiveMessage(PluginMessage) override;
  PluginMessage handleMessage(PluginMessage) override;

signals:
  void sendMessage(PluginMessage) override;

private:
  Plugin2Private *const d_ptr;
  Q_DECLARE_PRIVATE(Plugin2);
};

#endif // PLUGIN2_H
